package File;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

public class Demo7 {
    public static void main(String[] args) throws IOException {
        //     InputStream inputStream = null;
        //     try {
        //         inputStream = new FileInputStream("./text.txt");
        //     }finally {
        //         inputStream.close();
        //     }
        // }

        try (InputStream inputStream = new FileInputStream("./test.txt")) {
            // 读文件操作
            while (true) {
                //     // 一次只读一个字节
                //     int data = inputStream.read();
                //     if (data == -1) {
                //         // 文件读完
                //         break;
                //     }
                //     System.out.printf("0x%x\n", data);
                // }

                // 一次读多个字节,数组的长度自行定义
                byte[] data = new byte[3];
                // 读操作,就会尽可能把字节数组给填满
                // 如果填不满,就能填几个是几个
                // 此处的 n 表示实际读了几个字节
                int n = inputStream.read(data);
                System.out.println("n = " + n);
                if (n == -1) {
                    // 文件读完
                    break;
                }
                for (int i = 0; i < n; i++) {
                    System.out.printf("0x%x\n",data[i]);
                }
                System.out.println("======================");
            }
        }
    }
}
